package com.fas.system.domain;

import com.fas.common.annotation.Excel;
import com.fas.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.util.Date;
import java.util.List;

/**
 * 【请填写功能名称】对象 fas_contract
 *
 * @author ruoyi
 * @date 2022-04-25
 */
public class FasContract extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    private String id;

    /**
     * 合同名称
     */
    @Excel(name = "合同名称")
    private String name;

    /**
     * 负责人id
     */
    @Excel(name = "负责人id")
    private Long principalId;

    /**
     * 负责人名称
     */
    @Excel(name = "负责人名称")
    private String principalName;

    /**
     * 甲方名称
     */
    @Excel(name = "甲方名称")
    private String firstPartyName;

    /**
     * 附件url
     */
    @Excel(name = "附件url")
    private String attachmentUrl;

    private String condition;

    private Long deptId;

    private List<Long> deptIdList;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    private Integer cooperationCompanyId;//合作单位id
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date contractBgn;//合同开始时间
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date contractEnd;//合同结束时间

    private Integer maintInterval;//保养周期
    private String paymentMethod;//合同付款方式(sys_dict: payment_method)

    //非表字段
    private String companyName; //合作单位名称
    private String deptName; //维保单位名称

    @Override
    public Date getCreateTime() {
        return createTime;
    }

    @Override
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public List<Long> getDeptIdList() {
        return deptIdList;
    }

    public void setDeptIdList(List<Long> deptIdList) {
        this.deptIdList = deptIdList;
    }

    public Long getDeptId() {
        return deptId;
    }

    public void setDeptId(Long deptId) {
        this.deptId = deptId;
    }

    public String getCondition() {
        return condition;
    }

    public void setCondition(String condition) {
        this.condition = condition;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

    public void setPrincipalId(Long principalId) {
        this.principalId = principalId;
    }

    public Long getPrincipalId() {
        return principalId;
    }

    public void setPrincipalName(String principalName) {
        this.principalName = principalName;
    }

    public String getPrincipalName() {
        return principalName;
    }

    public void setFirstPartyName(String firstPartyName) {
        this.firstPartyName = firstPartyName;
    }

    public String getFirstPartyName() {
        return firstPartyName;
    }

    public void setAttachmentUrl(String attachmentUrl) {
        this.attachmentUrl = attachmentUrl;
    }

    public String getAttachmentUrl() {
        return attachmentUrl;
    }

    public Integer getCooperationCompanyId() {
        return cooperationCompanyId;
    }

    public void setCooperationCompanyId(Integer cooperationCompanyId) {
        this.cooperationCompanyId = cooperationCompanyId;
    }

    public Date getContractBgn() {
        return contractBgn;
    }

    public void setContractBgn(Date contractBgn) {
        this.contractBgn = contractBgn;
    }

    public Date getContractEnd() {
        return contractEnd;
    }

    public void setContractEnd(Date contractEnd) {
        this.contractEnd = contractEnd;
    }

    public Integer getMaintInterval() {
        return maintInterval;
    }

    public void setMaintInterval(Integer maintInterval) {
        this.maintInterval = maintInterval;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getPaymentMethod() {
        return paymentMethod;
    }

    public void setPaymentMethod(String paymentMethod) {
        this.paymentMethod = paymentMethod;
    }
}
